PHP: imagecopyresampled | 您所在的位置:网站首页 › PHP imagecopyresampled › PHP: imagecopyresampled |
imagecopyresampled
(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8) imagecopyresampled — Копирование и изменение размера изображения с ресемплированием Описание imagecopyresampled( GdImage $dst_image, GdImage $src_image, int $dst_x, int $dst_y, int $src_x, int $src_y, int $dst_width, int $dst_height, int $src_width, int $src_height): boolimagecopyresampled() копирует прямоугольную часть одного изображения на другое изображение, интерполируя значения пикселов таким образом, чтобы уменьшение размера изображения не уменьшало его чёткости. Другими словами, imagecopyresampled() берет прямоугольный участок из src_image с шириной src_width и высотой src_height на координатах src_x,src_y и помещает его в прямоугольный участок изображения dst_image шириной dst_width и высотой dst_height на координатах dst_x,dst_y. Если координаты, ширина или высота исходного и конечного изображений различны, копируемый фрагмент будет растянут или сжат. Координаты отсчитываются от левого верхнего угла изображения. Функцию можно использовать для наложения участков на то же изображение, с которого они скопированы (если dst_image имеет то же значение, что и src_image), но если участки будут пересекаться, результат непредсказуем. Список параметровdst_image Ресурс целевого изображения. src_imageРесурс исходного изображения. dst_xx-координата результирующего изображения. dst_yy-координата результирующего изображения. src_xx-координата исходного изображения. src_yy-координата исходного изображения. dst_widthРезультирующая ширина. dst_heightРезультирующая высота. src_widthШирина исходного изображения. src_heightВысота исходного изображения. Возвращаемые значенияФункция возвращает true в случае успешного выполнения или false, если возникла ошибка. Список изменений Версия Описание 8.0.0 dst_image и src_image теперь ожидают экземпляр GdImage; ранее ожидался ресурс (resource). Примеры
Пример #1 Простой пример В этом примере изображение будет сжато до половины исходного размера. Вывод приведённого примера будет похож на:
Пример #2 Ресэмплирование изображения с сохранением пропорций В этом примере изображение будет сжато до 200 пикселов по ширине или высоте, смотря что больше. Вывод приведённого примера будет похож на: ПримечанияЗамечание: Существует проблема связанная с ограничениями палитровых изображений (255+1 цвет). Ресэмплирование или фильтрация изображения требует больше цветов, чем 255. Для расчёта нового пиксела и его цвета применяется некоторое приближение. В случае палитровых изображений мы пытаемся создать новый цвет, а если это не удаётся, мы выбираем ближайший (теоретически) вычисленный цвет. Это не всегда визуально ближайший цвет. Такой подход может давать в результате пустые (или визуально пустые) изображения. Для устранения этой проблемы, пожалуйста, используйте truecolor-изображения в качестве результирующих, создаваемые функцией imagecreatetruecolor(). Смотрите также imagecopyresized() - Копирование и изменение размера части изображения imagescale() - Масштабировать изображение по заданной ширине и высоте imagecrop() - Обрезать изображение до заданного прямоугольника |
CopyRight 2018-2019 实验室设备网 版权所有 |